package projects.ufam.nodes.messages;

import sinalgo.nodes.Node;
import sinalgo.nodes.NodeState;
import sinalgo.nodes.messages.Message;

public class OGDCMessage extends Message {
	private static int _id = 0;
	private int id;
	private Node startingNode;
	private double angle;

	public OGDCMessage(Node startingNode, double angle) {
		this.startingNode = startingNode;
		this.angle = angle;
		id = _id++;
	}

	@Override
	public Message clone() {
		OGDCMessage m = new OGDCMessage(startingNode, angle);
		_id--;
		m.id = this.id;
		return m;
	}

	@Override
	public int getMessageSize() {
		return 1; // Rough estimate
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public Node getStartingNode() {
		return startingNode;
	}

	public void setStartingNode(Node startingNode) {
		this.startingNode = startingNode;
	}

	public double getAngle() {
		return angle;
	}

	public void setAngle(double angle) {
		this.angle = angle;
	}

}